feat(ui): real recognisable world map on the Action screen - #19
Merged
Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Replace the abstract blob continents with actual coastlines (Natural Earth 110m land, public domain) in the comic ink/paper/halftone style. Leaders pin at true lon/lat via an equirectangular mapping; Freedonia is an invented mid-Atlantic island, other human slots take ocean spots. viewBox → equirect (cropped past the ice caps), preserveAspectRatio meet, overlay constants rescaled to the new map units (tests updated to match). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
There was a problem hiding this comment.
🟢 Claude BugBot Analysis
Reviewed the WorldMap real-world-map PR (WorldMap.tsx, worldPath.ts, convert.py, and updated tests); coordinate math, viewBox cropping, CSS variable references, and test assertions are all internally consistent with no logic errors, null derefs, or resource issues found in the added/modified lines.
No bugs were detected in this PR.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Replace the Action screen's abstract blob continents with a recognisable real-world map — actual coastlines in the game's comic ink/paper/halftone style — with leaders pinned at their true geographic locations and Freedonia as an invented mid-Atlantic island. Look confirmed in the visual companion before building.
Changes
src/ui/components/worldPath.ts(new) —WORLD_PATH+WORLD_VIEWBOX. Real coastlines from Natural Earth 110m land (public domain — "No permission is needed… crediting unnecessary"), converted to equirectangular screen coords (x=lon+180, y=90-lat), RDP-simplified to a single ~37KB path withfill-rule="evenodd". Provenance/licence in the file header; source SVG + regenerator kept underscripts/worldmap/.src/ui/components/WorldMap.tsx— draws the real land path;viewBox→ equirectangular0 12 360 132(crops ice caps + Antarctica);preserveAspectRationone → xMidYMid meet(coastlines keep their proportions); an ocean rect + halftone fill the frame.COUNTRY_POSrewritten to true lon/lat via anll(lon,lat)helper; Freedonia (player1) is a small mid-Atlantic island, human slots 2–5 sit in other oceans. Launch arcs / impact rings / pulses / diplomacy trails / build icons keep their behaviour with constants rescaled to the new map units.Verified
npm run typecheckclean;npm run test:run→ 448 tests green (WorldMap tests updated for the rescaled overlay dimensions).Scoped visual swap of one component — no separate plan/subagent ceremony (a design note is at
docs/superpowers/specs/2026-07-26-real-world-map-design.md).🤖 Generated with Claude Code